home *** CD-ROM | disk | FTP | other *** search
- package netscape.ldap.controls;
-
- import netscape.ldap.LDAPControl;
- import netscape.ldap.ber.stream.BERConstruct;
- import netscape.ldap.ber.stream.BERInteger;
- import netscape.ldap.ber.stream.BEROctetString;
- import netscape.ldap.ber.stream.BERSequence;
- import netscape.ldap.ber.stream.BERTag;
-
- public class LDAPVirtualListControl extends LDAPControl {
- public static final String VIRTUALLIST = "2.16.840.1.113730.3.4.9";
- private static final int TAG_BYINDEX = 0;
- private static final int TAG_BYFILTER = 1;
- private int m_beforeCount;
- private int m_afterCount;
- private int m_listIndex = -1;
- private int m_listSize;
-
- LDAPVirtualListControl() {
- super("2.16.840.1.113730.3.4.9", true, (byte[])null);
- }
-
- public LDAPVirtualListControl(String var1, int var2, int var3) {
- super("2.16.840.1.113730.3.4.9", true, (byte[])null);
- this.setRange(var1, var2, var3);
- }
-
- public LDAPVirtualListControl(int var1, int var2, int var3, int var4) {
- super("2.16.840.1.113730.3.4.9", true, (byte[])null);
- this.m_listSize = var4;
- this.setRange(var1, var2, var3);
- }
-
- public void setRange(int var1, int var2, int var3) {
- this.m_beforeCount = var2;
- this.m_afterCount = var3;
- this.m_listIndex = var1;
- super.m_value = this.createPageSpecification(this.m_listIndex, this.m_listSize, this.m_beforeCount, this.m_afterCount);
- }
-
- public void setRange(String var1, int var2, int var3) {
- this.m_beforeCount = var2;
- this.m_afterCount = var3;
- super.m_value = this.createPageSpecification(var1, this.m_beforeCount, this.m_afterCount);
- }
-
- public int getIndex() {
- return this.m_listIndex;
- }
-
- public int getListSize() {
- return this.m_listSize;
- }
-
- public void setListSize(int var1) {
- this.m_listSize = var1;
- }
-
- public int getBeforeCount() {
- return this.m_beforeCount;
- }
-
- public int getAfterCount() {
- return this.m_afterCount;
- }
-
- private byte[] createPageSpecification(String var1, int var2, int var3) {
- BERSequence var4 = new BERSequence();
- ((BERConstruct)var4).addElement(new BERInteger(var2));
- ((BERConstruct)var4).addElement(new BERInteger(var3));
- ((BERConstruct)var4).addElement(new BERTag(129, new BEROctetString(var1), true));
- return ((LDAPControl)this).flattenBER(var4);
- }
-
- private byte[] createPageSpecification(int var1, int var2, int var3, int var4) {
- BERSequence var5 = new BERSequence();
- ((BERConstruct)var5).addElement(new BERInteger(var3));
- ((BERConstruct)var5).addElement(new BERInteger(var4));
- BERSequence var6 = new BERSequence();
- ((BERConstruct)var6).addElement(new BERInteger(var1));
- ((BERConstruct)var6).addElement(new BERInteger(var2));
- ((BERConstruct)var5).addElement(new BERTag(160, var6, true));
- return ((LDAPControl)this).flattenBER(var5);
- }
- }
-